Computer systems are classically defined as having a central processing unit, memory, and input/output devices. Recent advances in integrated circuit technology have allowed many of the classical computer functions to be integrated onto a single integrated circuit chip. These devices are known by a variety of terms such as microcontrollers, embedded controllers, microcomputers, and the like. However, they share a common characteristic in that they incorporate most classical computer functions on-chip. Because of their high level of integration, microcontrollers are ideal for applications such as automobile engine controllers, refrigerators, cellular telephones, remote controllers, and the like. In order to alleviate the need for external memory to store the operating program, microcontrollers commonly include nonvolatile memory in the form of read-only memory (ROM), programmable ROM (PROM), erasable programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM of E.sup.2 PROM), or one-time programmable ROM (OTPROM).
These microcontrollers frequently operate in a variety of modes but may be customized for individual applications. For example, a microcontroller may selectively implement an instruction of the central processing unit's instruction set. Other examples of different operating modes include the selection of whether an on-chip peripheral is active, support of different clock oscillator types such as crystal or resistor-capacitor (RC) network, the selection of the function of input/output pins, and the selection of other electrical characteristics of the device.
Some of these microcontrollers have their modes customized through bits, known as mask option bits, stored in nonvolatile memory. These bits are collectively referred to as the mask option register, or MOR. The MOR bits can be programmed at the same time the on-chip nonvolatile memory is programmed, and thus the microcontroller may be customized for the application. The mask option bits form signals which are continuously driven to various circuits to select the operating modes.
There are three known approaches for implementing the MOR. In the first approach, known as the static latched design, mask option data is stored in a portion of a nonvolatile memory. The other portion is used to store the software and data required to operate the microcontroller. When the microcontroller receives a reset signal (due to powering up or the system forcing a reset to the microcontroller), the mask option information is read from the nonvolatile memory and stored in static latches which generally retain the state of the data during normal operation.
There are problems with the static latched design. First, the mask option signals are not valid until the reset signal is inactivated. Therefore, some types of mask options, such as the clock oscillator type, cannot be implemented in the static latched MOR design because the mask options must be valid during the reset sequence. Second, the states of the mask option bits are held in latches which may become corrupted under adverse conditions with no possibility of recovery.
The second approach, known as the continuous refresh approach, uses a separate nonvolatile memory whose contents are continuously sensed and latched. The continuous refresh design corrects the problems of the static latched design. First, the continuous refresh approach provides valid mask option bits prior to the inactivation of the reset signal. Second, the state of the nonvolatile memory bits are almost instantaneously reflected on the mask option signals, eliminating most of the susceptibility to electrical disturbances.
However, the continuous refresh approach has several disadvantages compared to the static latched approach. The continuous refresh design requires a significant amount of power because the nonvolatile memory bits are being sensed continuously, causing current to flow continuously through the nonvolatile memory cells. The magnitude of the current flowing through each of the nonvolatile memory bits is dependent on the type of fabrication process used to manufacture them. Another problem is decreased reliability. The constant sensing bias voltage applied to the nonvolatile memory cells tends to degrade their data retention time (how long the bit retains data). The data retention time is known to be dependent on the period of time the nonvolatile memory cell is biased.
The third approach, known as the pseudo static approach, solves the problems with both of the previous two approaches. In the pseudo static approach, the MOR bits are stored in a separate nonvolatile memory. Instead of continuous updating, however, the MOR bits are read (sensed) only periodically. This periodic reading prevents unrecoverable errors caused when an electrical disturbance corrupts the contents of the stored MOR bits. The pseudo static approach reduces power consumption by only periodically reading the contents of the nonvolatile memory cells. Additionally, the pseudo static MOR output signals are valid prior to the termination of reset.
However, two main problems with the pseudo static approach remain. Since the pseudo static approach uses a separate nonvolatile memory array, the circuitry in general is different. For example, the sense amplifiers in the main nonvolatile memory array, which may have several thousand bits, are designed for speed whereas the sense amplifiers for the MOR block, which may typically have eight bits, are designed for low power consumption. Thus, the operation of this block must be evaluated and its reliability guaranteed separately from the main nonvolatile memory block. Even if the nonvolatile memory cells themselves are the same as in the main array, the difference in sense amplifiers makes the overall operation different.
Second, the pseudo static approach requires a large amount of circuit area to implement the separate nonvolatile memory cells, sense amplifiers, and high voltage circuits. In addition to area, the extra circuitry consumes more power. While the pseudo static approach consumes less power than the continuous refresh approach, further reduction is desirable.